package com.heima.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.github.pagehelper.Page;
import com.heima.pojo.User;
import com.heima.pojo.dto.UserPageDto;
import com.heima.pojo.dto.UserSearchDto;
import com.heima.pojo.vo.UserSearchVo;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Select;

import java.util.Date;
import java.util.List;

public interface UserMapper extends BaseMapper<User> {

    /**
     * 分页查询
     * @param dto
     * @return
     */
    Page<User> pageQuery(UserPageDto dto);

    /**
     * 新增人员
     * @param user
     */

    void add(User user);

    /**
     * 修改人员
     * @param user
     */
    void updateUser(User user);

    @Delete("delete from tb_user where id = #{userId}")
    void delById(String userId);

    @Select("select * from tb_user where id = #{userId};")
    User queryById(Integer userId);

    Page<UserSearchVo> userSearch(UserSearchDto dto);

    /**
     * 工单统计
     * @param start
     * @param end
     * @param userId
     * @return
     */
    List<UserSearchVo> userWork(Date start, Date end, String userId);

    List<UserSearchVo> queryListByInnerCode(String innerCode);
}
